<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.6"/>
<title>libnetconf: NETCONF rpc (libxml2)</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../jquery.js"></script>
<script type="text/javascript" src="../../dynsections.js"></script>
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../resize.js"></script>
<script type="text/javascript" src="../../navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="../../libnetconf-logo.png"/></td>
  <td style="padding-left: 0.5em;">
   <div id="projectname">libnetconf
   &#160;<span id="projectnumber">0.10.0-146_trunk</span>
   </div>
   <div id="projectbrief">NETCONF Library</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="../../index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="../../pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="../../modules.html"><span>Modules</span></a></li>
      <li><a href="../../annotated.html"><span>Data&#160;Structures</span></a></li>
      <li><a href="../../files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="../../search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('d7/dda/group__rpc__xml.html','../../');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">NETCONF rpc (libxml2)</div>  </div>
</div><!--header-->
<div class="contents">

<p>libnetconf's functions for handling the NETCONF &lt;rpc&gt; messages. These functions accepts parameters as libxml2 structures.  
<a href="#details">More...</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:gac05e048345a6130490bdbdde8e52a845"><td class="memItemLeft" align="right" valign="top">struct nc_filter *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d7/dda/group__rpc__xml.html#gac05e048345a6130490bdbdde8e52a845">ncxml_filter_new</a> (<a class="el" href="../../db/de9/group__rpc.html#ga9e74498f9118686c7fb8dfe2c2459706">NC_FILTER_TYPE</a> type,...)</td></tr>
<tr class="memdesc:gac05e048345a6130490bdbdde8e52a845"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a new NETCONF filter of the specified type.  <a href="#gac05e048345a6130490bdbdde8e52a845">More...</a><br/></td></tr>
<tr class="separator:gac05e048345a6130490bdbdde8e52a845"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa6bcfc7c3e217e1b64c63bd674af4d8e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../db/de9/group__rpc.html#gab21d1d39737065c552f2ccc5b4819262">nc_rpc</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d7/dda/group__rpc__xml.html#gaa6bcfc7c3e217e1b64c63bd674af4d8e">ncxml_rpc_build</a> (xmlDocPtr rpc_dump, const struct nc_session *session)</td></tr>
<tr class="memdesc:gaa6bcfc7c3e217e1b64c63bd674af4d8e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Build &lt;rpc&gt; message from the libxml2 document structure. This is the reverse function of the <a class="el" href="../../d7/dda/group__rpc__xml.html#ga9f27fbe1879115a07d7b3ae8bf6be9e6" title="Dump the rpc message into a libxml2 document structure. ">ncxml_rpc_dump()</a>.  <a href="#gaa6bcfc7c3e217e1b64c63bd674af4d8e">More...</a><br/></td></tr>
<tr class="separator:gaa6bcfc7c3e217e1b64c63bd674af4d8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae7ab635ff3bb76089e372f3d22ebaf3c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../db/de9/group__rpc.html#gab21d1d39737065c552f2ccc5b4819262">nc_rpc</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d7/dda/group__rpc__xml.html#gae7ab635ff3bb76089e372f3d22ebaf3c">ncxml_rpc_copyconfig</a> (<a class="el" href="../../db/d67/group__store.html#ga5e4b9ee138b963e8ea2354fef2ebbe73">NC_DATASTORE</a> source, <a class="el" href="../../db/d67/group__store.html#ga5e4b9ee138b963e8ea2354fef2ebbe73">NC_DATASTORE</a> target,...)</td></tr>
<tr class="memdesc:gae7ab635ff3bb76089e372f3d22ebaf3c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create &lt;copy-config&gt; NETCONF rpc message.  <a href="#gae7ab635ff3bb76089e372f3d22ebaf3c">More...</a><br/></td></tr>
<tr class="separator:gae7ab635ff3bb76089e372f3d22ebaf3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9f27fbe1879115a07d7b3ae8bf6be9e6"><td class="memItemLeft" align="right" valign="top">xmlDocPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d7/dda/group__rpc__xml.html#ga9f27fbe1879115a07d7b3ae8bf6be9e6">ncxml_rpc_dump</a> (const <a class="el" href="../../db/de9/group__rpc.html#gab21d1d39737065c552f2ccc5b4819262">nc_rpc</a> *rpc)</td></tr>
<tr class="memdesc:ga9f27fbe1879115a07d7b3ae8bf6be9e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dump the rpc message into a libxml2 document structure.  <a href="#ga9f27fbe1879115a07d7b3ae8bf6be9e6">More...</a><br/></td></tr>
<tr class="separator:ga9f27fbe1879115a07d7b3ae8bf6be9e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf75f595f932fa0f075d633015829a85c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../db/de9/group__rpc.html#gab21d1d39737065c552f2ccc5b4819262">nc_rpc</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d7/dda/group__rpc__xml.html#gaf75f595f932fa0f075d633015829a85c">ncxml_rpc_editconfig</a> (<a class="el" href="../../db/d67/group__store.html#ga5e4b9ee138b963e8ea2354fef2ebbe73">NC_DATASTORE</a> target, <a class="el" href="../../db/d67/group__store.html#ga5e4b9ee138b963e8ea2354fef2ebbe73">NC_DATASTORE</a> source, <a class="el" href="../../db/de9/group__rpc.html#ga5852fd110198481afb37cc8dcf0bf454">NC_EDIT_DEFOP_TYPE</a> default_operation, <a class="el" href="../../db/de9/group__rpc.html#ga8eb32ba579043f2750fa8558d9284b32">NC_EDIT_ERROPT_TYPE</a> error_option, <a class="el" href="../../db/de9/group__rpc.html#gaca86efe74fc9a26cc30e33a8e9772579">NC_EDIT_TESTOPT_TYPE</a> test_option,...)</td></tr>
<tr class="memdesc:gaf75f595f932fa0f075d633015829a85c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create &lt;edit-config&gt; NETCONF rpc message.  <a href="#gaf75f595f932fa0f075d633015829a85c">More...</a><br/></td></tr>
<tr class="separator:gaf75f595f932fa0f075d633015829a85c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaad5d888e8c4a07a5f59b31555f7413bb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../db/de9/group__rpc.html#gab21d1d39737065c552f2ccc5b4819262">nc_rpc</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d7/dda/group__rpc__xml.html#gaad5d888e8c4a07a5f59b31555f7413bb">ncxml_rpc_generic</a> (const xmlNodePtr data)</td></tr>
<tr class="memdesc:gaad5d888e8c4a07a5f59b31555f7413bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a generic NETCONF rpc message with the specified content.  <a href="#gaad5d888e8c4a07a5f59b31555f7413bb">More...</a><br/></td></tr>
<tr class="separator:gaad5d888e8c4a07a5f59b31555f7413bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga16f3dd2aaa13922eae37551179913b18"><td class="memItemLeft" align="right" valign="top">xmlNodePtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d7/dda/group__rpc__xml.html#ga16f3dd2aaa13922eae37551179913b18">ncxml_rpc_get_config</a> (const <a class="el" href="../../db/de9/group__rpc.html#gab21d1d39737065c552f2ccc5b4819262">nc_rpc</a> *rpc)</td></tr>
<tr class="memdesc:ga16f3dd2aaa13922eae37551179913b18"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get &lt;config&gt; element from the RPC operation including its content. This function is valid only for &lt;copy-config&gt; and &lt;edit-config&gt; RPCs.  <a href="#ga16f3dd2aaa13922eae37551179913b18">More...</a><br/></td></tr>
<tr class="separator:ga16f3dd2aaa13922eae37551179913b18"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga78cb3e4ae4050de932cb9e705316ce53"><td class="memItemLeft" align="right" valign="top">xmlNodePtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d7/dda/group__rpc__xml.html#ga78cb3e4ae4050de932cb9e705316ce53">ncxml_rpc_get_op_content</a> (const <a class="el" href="../../db/de9/group__rpc.html#gab21d1d39737065c552f2ccc5b4819262">nc_rpc</a> *rpc)</td></tr>
<tr class="memdesc:ga78cb3e4ae4050de932cb9e705316ce53"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the content of the operation specification from the given rpc.  <a href="#ga78cb3e4ae4050de932cb9e705316ce53">More...</a><br/></td></tr>
<tr class="separator:ga78cb3e4ae4050de932cb9e705316ce53"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<p>libnetconf's functions for handling the NETCONF &lt;rpc&gt; messages. These functions accepts parameters as libxml2 structures. </p>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="gac05e048345a6130490bdbdde8e52a845"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">struct nc_filter* ncxml_filter_new </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="../../db/de9/group__rpc.html#ga9e74498f9118686c7fb8dfe2c2459706">NC_FILTER_TYPE</a>&#160;</td>
          <td class="paramname"><em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Create a new NETCONF filter of the specified type. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">type</td><td>Type of the filter. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">...</td><td>Filter content:<ul>
<li>for <a class="el" href="../../db/de9/group__rpc.html#gga9e74498f9118686c7fb8dfe2c2459706ab584539474b828102a0b7238b614abd4">NC_FILTER_SUBTREE</a> type, single variadic parameter <b>const xmlNodePtr filter</b> with the content for the &lt;filter&gt; element is accepted. The filter parameter is not supposed to contain &lt;filter&gt; element, but only its content. The node is taken as a node list, so the sibling nodes are also added into the filter definition. If NULL is specified, the Empty filter (RFC 6241 sec 6.4.2) is created. </li>
</ul>
</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Created NETCONF filter structure. </dd></dl>

</div>
</div>
<a class="anchor" id="gaa6bcfc7c3e217e1b64c63bd674af4d8e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="../../db/de9/group__rpc.html#gab21d1d39737065c552f2ccc5b4819262">nc_rpc</a>* ncxml_rpc_build </td>
          <td>(</td>
          <td class="paramtype">xmlDocPtr&#160;</td>
          <td class="paramname"><em>rpc_dump</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const struct nc_session *&#160;</td>
          <td class="paramname"><em>session</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Build &lt;rpc&gt; message from the libxml2 document structure. This is the reverse function of the <a class="el" href="../../d7/dda/group__rpc__xml.html#ga9f27fbe1879115a07d7b3ae8bf6be9e6" title="Dump the rpc message into a libxml2 document structure. ">ncxml_rpc_dump()</a>. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">rpc_dump</td><td>XML document structure with the NETCONF &lt;rpc&gt; message. The structure is integrated into the internal rpc structure and caller should not access (or free) given XML document anymore. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">session</td><td>Session information needed for ACM. If NULL, ACM structure is not prepared and no ACM rules will be applied to the created RPC message. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Complete rpc structure used by libnetconf's functions. </dd></dl>

</div>
</div>
<a class="anchor" id="gae7ab635ff3bb76089e372f3d22ebaf3c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="../../db/de9/group__rpc.html#gab21d1d39737065c552f2ccc5b4819262">nc_rpc</a>* ncxml_rpc_copyconfig </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="../../db/d67/group__store.html#ga5e4b9ee138b963e8ea2354fef2ebbe73">NC_DATASTORE</a>&#160;</td>
          <td class="paramname"><em>source</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="../../db/d67/group__store.html#ga5e4b9ee138b963e8ea2354fef2ebbe73">NC_DATASTORE</a>&#160;</td>
          <td class="paramname"><em>target</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Create &lt;copy-config&gt; NETCONF rpc message. </p>
<h3>Variadic parameters:</h3>
<ul>
<li>the source is specified as <a class="el" href="../../db/d67/group__store.html#gga5e4b9ee138b963e8ea2354fef2ebbe73a735c5d45557d1545fcb65bfdf484290e">NC_DATASTORE_CONFIG</a>:<ul>
<li><a class="el" href="../../db/de9/group__rpc.html#gaf7b76c1243dc218cf1dc8b17876e319c" title="Create &lt;copy-config&gt; NETCONF rpc message. ">nc_rpc_copyconfig()</a> accepts as the first variadic parameter <b>const xmlNodePtr source_config</b> providing the complete configuration data to copy.</li>
</ul>
</li>
<li>the source is specified as <a class="el" href="../../db/d67/group__store.html#gga5e4b9ee138b963e8ea2354fef2ebbe73a8507d8c0a99ba9da1cb38287b26b911c">NC_DATASTORE_URL</a>:<ul>
<li><a class="el" href="../../db/de9/group__rpc.html#gaf7b76c1243dc218cf1dc8b17876e319c" title="Create &lt;copy-config&gt; NETCONF rpc message. ">nc_rpc_copyconfig()</a> accepts as the first variadic parameter <b>const char* source_url</b> providing the URL to the file</li>
</ul>
</li>
<li>target is specified as <a class="el" href="../../db/d67/group__store.html#gga5e4b9ee138b963e8ea2354fef2ebbe73a8507d8c0a99ba9da1cb38287b26b911c">NC_DATASTORE_URL</a>:<ul>
<li><a class="el" href="../../db/de9/group__rpc.html#gaf7b76c1243dc218cf1dc8b17876e319c" title="Create &lt;copy-config&gt; NETCONF rpc message. ">nc_rpc_copyconfig()</a> accepts as another (first or second according to eventual previous variadic parameter) variadic parameter <b>const char* target_url</b> providing the URL to the target file.</li>
</ul>
</li>
</ul>
<p>The file that the url refers to contains the complete datastore, encoded in XML under the element &lt;config&gt; in the "urn:ietf:params:xml:ns:netconf:base:1.0" namespace.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">source</td><td>Source configuration datastore type. If the NC_DATASTORE_NONE is specified, data parameter is used as the complete configuration to copy. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">target</td><td>Target configuration datastore type to be replaced. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">...</td><td>Specific parameters according to the source and target parameters. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Created rpc message. </dd></dl>

</div>
</div>
<a class="anchor" id="ga9f27fbe1879115a07d7b3ae8bf6be9e6"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">xmlDocPtr ncxml_rpc_dump </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="../../db/de9/group__rpc.html#gab21d1d39737065c552f2ccc5b4819262">nc_rpc</a> *&#160;</td>
          <td class="paramname"><em>rpc</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Dump the rpc message into a libxml2 document structure. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">rpc</td><td>rpc message. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>XML document of the NETCONF's &lt;rpc&gt; message. Caller is supposed to free the returned structure with xmlFreeDoc(). </dd></dl>

</div>
</div>
<a class="anchor" id="gaf75f595f932fa0f075d633015829a85c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="../../db/de9/group__rpc.html#gab21d1d39737065c552f2ccc5b4819262">nc_rpc</a>* ncxml_rpc_editconfig </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="../../db/d67/group__store.html#ga5e4b9ee138b963e8ea2354fef2ebbe73">NC_DATASTORE</a>&#160;</td>
          <td class="paramname"><em>target</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="../../db/d67/group__store.html#ga5e4b9ee138b963e8ea2354fef2ebbe73">NC_DATASTORE</a>&#160;</td>
          <td class="paramname"><em>source</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="../../db/de9/group__rpc.html#ga5852fd110198481afb37cc8dcf0bf454">NC_EDIT_DEFOP_TYPE</a>&#160;</td>
          <td class="paramname"><em>default_operation</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="../../db/de9/group__rpc.html#ga8eb32ba579043f2750fa8558d9284b32">NC_EDIT_ERROPT_TYPE</a>&#160;</td>
          <td class="paramname"><em>error_option</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="../../db/de9/group__rpc.html#gaca86efe74fc9a26cc30e33a8e9772579">NC_EDIT_TESTOPT_TYPE</a>&#160;</td>
          <td class="paramname"><em>test_option</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Create &lt;edit-config&gt; NETCONF rpc message. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">target</td><td>Target configuration datastore type to be edited. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">source</td><td>Specifies the type of the source data taken from the variadic parameter. Only <a class="el" href="../../db/d67/group__store.html#gga5e4b9ee138b963e8ea2354fef2ebbe73a735c5d45557d1545fcb65bfdf484290e">NC_DATASTORE_CONFIG</a> (variadic parameter contains the &lt;config&gt; data) and <a class="el" href="../../db/d67/group__store.html#gga5e4b9ee138b963e8ea2354fef2ebbe73a8507d8c0a99ba9da1cb38287b26b911c">NC_DATASTORE_URL</a> (variadic parameter contains URL for &lt;url&gt; element) values are accepted. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">default_operation</td><td>Default operation for this request, 0 to skip the setting of this parameter and use default server ('merge') behavior. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">error_option</td><td>Set the response to an error, 0 for the server default behavior. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">test_option</td><td>Set test-option element according to :validate:1.1 capability specified in RFC 6241. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">...</td><td>According to the source parameter, variadic parameter can be one of the following:<ul>
<li><b>const xmlNodePtr config</b> defining the content of the &lt;config&gt; element in case the source parameter is specified as <a class="el" href="../../db/d67/group__store.html#gga5e4b9ee138b963e8ea2354fef2ebbe73a735c5d45557d1545fcb65bfdf484290e">NC_DATASTORE_CONFIG</a>. The config parameter can points to the node list.</li>
<li><b>const char* source_url</b> specifying URL, in case the source parameter is specified as <a class="el" href="../../db/d67/group__store.html#gga5e4b9ee138b963e8ea2354fef2ebbe73a8507d8c0a99ba9da1cb38287b26b911c">NC_DATASTORE_URL</a>. The URL must refer to the file containing configuration data hierarchy to be modified, encoded in XML under the element &lt;config&gt; in the "urn:ietf:params:xml:ns:netconf:base:1.0" namespace.</li>
</ul>
</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Created rpc message. </dd></dl>

</div>
</div>
<a class="anchor" id="gaad5d888e8c4a07a5f59b31555f7413bb"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="../../db/de9/group__rpc.html#gab21d1d39737065c552f2ccc5b4819262">nc_rpc</a>* ncxml_rpc_generic </td>
          <td>(</td>
          <td class="paramtype">const xmlNodePtr&#160;</td>
          <td class="paramname"><em>data</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Create a generic NETCONF rpc message with the specified content. </p>
<p>The function recieves the data parameter and envelopes it into an &lt;rpc&gt; container. Caller is fully responsible for the correctness of the given data.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">data</td><td>XML content of the &lt;rpc&gt; request to be sent. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Created rpc message. </dd></dl>

</div>
</div>
<a class="anchor" id="ga16f3dd2aaa13922eae37551179913b18"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">xmlNodePtr ncxml_rpc_get_config </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="../../db/de9/group__rpc.html#gab21d1d39737065c552f2ccc5b4819262">nc_rpc</a> *&#160;</td>
          <td class="paramname"><em>rpc</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get &lt;config&gt; element from the RPC operation including its content. This function is valid only for &lt;copy-config&gt; and &lt;edit-config&gt; RPCs. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">rpc</td><td>&lt;copy-config&gt; or &lt;edit-config&gt; rpc message.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>XML node &lt;config&gt; with its content or NULL on error. Note that &lt;config&gt; can contain no data. Caller is supposed to free the returned structure with xmlFreeNode(). </dd></dl>

</div>
</div>
<a class="anchor" id="ga78cb3e4ae4050de932cb9e705316ce53"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">xmlNodePtr ncxml_rpc_get_op_content </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="../../db/de9/group__rpc.html#gab21d1d39737065c552f2ccc5b4819262">nc_rpc</a> *&#160;</td>
          <td class="paramname"><em>rpc</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get the content of the operation specification from the given rpc. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">rpc</td><td>rpc message. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>libxml2 node structure with the NETCONF operation element(s) and its content. Caller is supposed to free the returned structure with xmlFreeNodeList(). </dd></dl>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="footer">Generated on Fri Apr 15 2016 09:20:09 for libnetconf by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="../../doxygen.png" alt="doxygen"/></a> 1.8.6 </li>
  </ul>
</div>
</body>
</html>
